﻿using System.Windows;
using System.Windows.Controls;
using System.Windows.Controls.Primitives;
using SAPPDI.Entitys;
using TestImpresion.Clases.Comunes;

namespace TestImpresion.Controles
{
    public partial class DinamicComprarPor : UserControl
    {
        private readonly DependencyProperty _pliegoProperty =
DependencyProperty.Register("PliegoSeleccionado", typeof(Pliego), typeof(DinamicComprarPor), new PropertyMetadata(new Pliego(1, 1)));

        [System.ComponentModel.Category("User properties")]
        [System.ComponentModel.Description("User Datasource")]
        public Pliego PliegoSeleccionado
        {
            get { return (Pliego)GetValue(_pliegoProperty); }
            set
            {
                SetValue(_pliegoProperty, value);
            }
        }

        public DinamicComprarPor()
        {
            InitializeComponent();
        }

        private void ToggleButton_OnChecked(object sender, RoutedEventArgs e)
        {
            var toogle = (ToggleButton)sender;
            Utiles.UncheckElementos(toogle, this.LayoutRoot.Children);

            if (toogle.Name.ToLower().Contains("carta"))
            {
                this.PliegoSeleccionado= new PliegoCarta();
            }
            else if (toogle.Name.ToLower().Contains("oficio"))
            {
                this.PliegoSeleccionado= new PliegoOficio();
            }
            else if (toogle.Name.ToLower().Contains("rebasado"))
            {
                this.PliegoSeleccionado= new PliegoCartaRebasado();
            }
            this.DividePliego(toogle.Name);
        }

        private void DividePliego(string botonSeleccionado)
        {
            var indice = botonSeleccionado.Split('_')[1];
            switch (indice)
            {
                case "0":
                    this.PliegoSeleccionado.DividePliego(SizePagina.Entero);
                    break;
                case "1":
                    this.PliegoSeleccionado.DividePliego(SizePagina.S1_2);
                    break;
                case "2":
                    this.PliegoSeleccionado.DividePliego(SizePagina.S1_4);
                    break;
                case "3":
                    this.PliegoSeleccionado.DividePliego(SizePagina.S1_8);
                    break;
            }
        }

    }
}
